/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package Entities;

import java.sql.ResultSet;
import java.sql.SQLException;

/**
 *
 * @author JackOddie
 */
public class Jadwal {

    private static boolean isNamaPenyewaValid,  nomorTelponValid;
    private String jamMulai,  jamSelesai, tanggal, status_langganan, ID_user;
    private String namaPenyewa,  noTelpPenyewa,  IDStudio, IDJadwal;

    public Jadwal(String jamMulai,String  jamSelesai,String tanggal,String status_langganan,String ID_user,String namaPenyewa,String  noTelpPenyewa,String  IDStudio) {

        this.IDStudio =IDStudio;
        this.ID_user = ID_user;
        this.jamMulai = jamMulai;
        this.jamSelesai = jamSelesai;
        this.namaPenyewa = namaPenyewa;
        this.noTelpPenyewa = noTelpPenyewa ;
        this.status_langganan = status_langganan;
        this.tanggal = tanggal;
    }
    public Jadwal() {

    }

    public String getTanggal() {
        return tanggal;
    }

    public void setTanggal(String tanggal) {
        this.tanggal = tanggal;
    }

    public String getJamMulai() {
        return jamMulai;
    }

    public void setJamMulai(String jamMulai) {
        this.jamMulai = jamMulai;
    }

    public String getJamSelesai() {
        return jamSelesai;
    }

    public void setJamSelesai(String jamSelesai) {
        this.jamSelesai = jamSelesai;
    }

    public String getNamaPenyewa() {
        return namaPenyewa;
    }

    public void setNamaPenyewa(String namaPenyewa) {
        this.namaPenyewa = namaPenyewa;
    }

    public String getNoTelpPenyewa() {
        return noTelpPenyewa;
    }

    public void setNoTelpPenyewa(String noTelpPenyewa) {
        this.noTelpPenyewa = noTelpPenyewa;
    }

    public String getIDStudio() {
        return IDStudio;
    }

    public void setIDStudio(String IDStudio) {
        this.IDStudio = IDStudio;
    }

    public void getDatabyIDStudio(String Id_studio) throws SQLException {
        DBConnection conn = new DBConnection();

        String query = "select * from JADWAL where id_studio= '" + Id_studio + "'";
        ResultSet rset = conn.select(query);
        while (rset.next()) {
            tanggal = rset.getString("tanggal");
            IDJadwal = rset.getString("id_jadwal");
            ID_user = rset.getString("id_user");
            IDStudio = rset.getString("id_studio");
            namaPenyewa = rset.getString("nama_penyewa");
            noTelpPenyewa = rset.getString("no_telp_penyewa");            
            jamMulai = rset.getString("jam_mulai");
            jamSelesai = rset.getString("jam_selesai");
            namaPenyewa = rset.getString("nama_penyewa");
            
        }
    }
       public void setInactive() throws SQLException{
           DBConnection conn = new DBConnection();
        String query = "update jadwal set status_langganan='inactive' where NO_TELP_PENYEWA='"+noTelpPenyewa+"'" ;
        conn.updateData(query);
    }
    public void updateData(String kodeTelp) throws SQLException{
        DBConnection conn = new DBConnection();
        String query="update jadwal set NAMA_PENYEWA='"+namaPenyewa+"', NO_TELP_PENYEWA='"+noTelpPenyewa+"'where NO_TELP_PENYEWA='"+kodeTelp+"'";
        conn.updateData(query);
    }

    public void saveToDB() throws SQLException{
        DBConnection db = new DBConnection();
        //
        ResultSet rset = db.count("jml", "JADWAL");

        int count=0;
        
        while(rset.next()){
         count= (int) rset.getDouble("jml");
        }
        String idJadwal = "JSPPSM - "+ (count+1);
        
        String query = "insert into JADWAL (id_jadwal,jam_mulai,jam_selesai,nama_penyewa,no_telp_penyewa,id_studio,tanggal,status_langganan,id_user) values('"
                +idJadwal+"','"
                +jamMulai+"','"
                +jamSelesai+"','"
                +namaPenyewa+"','"
                +noTelpPenyewa+"','"
                +IDStudio+"','"
                +tanggal+"','"
                +status_langganan+"','"
                +ID_user+"')";
        
        DBConnection conn = new DBConnection();
        conn.updateData(query);
    }
    
    public static boolean isNamePenyewaValid(String namaPenyewa) {
        if (namaPenyewa.length()>0 && namaPenyewa.matches("[a-zA-Z ]*")) {
            return isNamaPenyewaValid = true;
        } else {
            return isNamaPenyewaValid = false;
        }
    }

    public static boolean isNomorTelponPenyewaValid(String noTelp) {
        if (noTelp.length() > 7 && noTelp.length() < 13) {
            if (noTelp.matches("[0-9]*")) {
                return nomorTelponValid = true;
            } else {
                return nomorTelponValid = false;
            }
        } else {
            return nomorTelponValid = false;
        }

    }

    public String getStatus_langganan() {
        return status_langganan;
    }

    public void setStatus_langganan(String status_langganan) {
        this.status_langganan = status_langganan;
    }

    public String getIDJadwal() {
        return IDJadwal;
    }

    public void setIDJadwal(String IDJadwal) {
        this.IDJadwal = IDJadwal;
    }

    public String getID_user() {
        return ID_user;
    }

    public void setID_user(String ID_user) {
        this.ID_user = ID_user;
    }
}
